#pragma once
#include "Header.h"
#include "Util.h"

FLT_PREOP_CALLBACK_STATUS CreatePreOperation(
    _Inout_ PFLT_CALLBACK_DATA Data,
    _In_ PCFLT_RELATED_OBJECTS FltObjects,
    _Flt_CompletionContext_Outptr_ PVOID* CompletionContext
);

FLT_PREOP_CALLBACK_STATUS WritePreOperation(
    _Inout_                         PFLT_CALLBACK_DATA Data,
    _In_                            PCFLT_RELATED_OBJECTS FltObjects,
    _Flt_CompletionContext_Outptr_  PVOID* CompletionContext
);

FLT_PREOP_CALLBACK_STATUS SetInformationPreOperation(
    _Inout_                         PFLT_CALLBACK_DATA Data,
    _In_                            PCFLT_RELATED_OBJECTS FltObjects,
    _Flt_CompletionContext_Outptr_  PVOID* CompletionContext
);
